5eec39a1b4b315b6b4ed09c9996ee9e3f0ae7f2d,jzy3d-api/src/api/org/jzy3d/plot3d/primitives/vbo/DrawableVBO.java,DrawableVBO,doDrawElements,#GL#,71

Before Change


			gl.getGL2().glDrawElements(getGeometry(), size, GL.GL_UNSIGNED_INT, pointer);

			gl.getGL2().glBindBuffer(GL.GL_ELEMENT_ARRAY_BUFFER, elementName[0]);
			gl.getGL2().glBindBuffer(GL.GL_ARRAY_BUFFER, arrayName[0]);
			gl.getGL2().glDisableClientState(GLPointerFunc.GL_VERTEX_ARRAY);
			gl.getGL2().glDisableClientState(GLPointerFunc.GL_NORMAL_ARRAY);
		} else {

After Change


        this.hasColorBuffer = hasColorBuffer;
    }

    protected void doDrawElements(GL gl) {
        if (gl.isGL2()) {
            doBindGL2(gl);

            gl.getGL2().glVertexPointer(dimensions, GL.GL_FLOAT, byteOffset, pointer);
            gl.getGL2().glNormalPointer(GL.GL_FLOAT, byteOffset, normalOffset);

            if (hasColorBuffer) {
                // int bo = 6 * Buffers.SIZEOF_FLOAT;
                int p = 3 * Buffers.SIZEOF_FLOAT;
                gl.getGL2().glEnableClientState(GL2.GL_COLOR_ARRAY);
                gl.getGL2().glColorPointer(colorChannelNumber, GL.GL_FLOAT, byteOffset, p);
            }

            // enable
            gl.getGL2().glEnableClientState(GLPointerFunc.GL_VERTEX_ARRAY);
            gl.getGL2().glEnableClientState(GLPointerFunc.GL_NORMAL_ARRAY);

            // draw
            gl.getGL2().glDrawElements(getGeometry(), size, GL.GL_UNSIGNED_INT, pointer);

            doBindGL2(gl);

            // disable
            gl.getGL2().glDisableClientState(GLPointerFunc.GL_VERTEX_ARRAY);
            gl.getGL2().glDisableClientState(GLPointerFunc.GL_NORMAL_ARRAY);

            if (hasColorBuffer) {
                gl.getGL2().glDisableClientState(GL2.GL_COLOR_ARRAY);
            }

        } else {